<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.jtleigh.com/Commerce/Spencer/Features/ProductFeedback/1.0/Runtime/GetProductFeedback/" xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/" elementFormDefault="qualified" targetNamespace="http://schemas.jtleigh.com/Commerce/Spencer/Features/ProductFeedback/1.0/Runtime/GetProductFeedback/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import schemaLocation="http://localhost:8731/Spencer/ProductFeedback/ProductFeedbackRuntime.svc?xsd=xsd3" namespace="http://schemas.jtleigh.com/Commerce/Spencer/Core/1.0/" />
  <xs:import schemaLocation="http://localhost:8731/Spencer/ProductFeedback/ProductFeedbackRuntime.svc?xsd=xsd4" namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
  <xs:import schemaLocation="http://localhost:8731/Spencer/ProductFeedback/ProductFeedbackRuntime.svc?xsd=xsd1" namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
  <xs:import schemaLocation="http://localhost:8731/Spencer/ProductFeedback/ProductFeedbackRuntime.svc?xsd=xsd5" namespace="http://schemas.datacontract.org/2004/07/JTLeigh.Commerce.Spencer.Features.ProductFeedback.Service.Contracts.Runtime.GetProductFeedback" />
  <xs:complexType name="GetProductFeedbackReq">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q1="http://schemas.jtleigh.com/Commerce/Spencer/Core/1.0/" base="q1:RequestBase">
        <xs:sequence>
          <xs:element minOccurs="0" name="PaginationBehavior" nillable="true" type="q1:PaginationBehavior" />
          <xs:element name="ProductId" nillable="true" type="q1:FullyQualifiedProductId" />
          <xs:element name="SelectionBehaviorName" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="GetProductFeedbackReq" nillable="true" type="tns:GetProductFeedbackReq" />
  <xs:complexType name="GetProductFeedbackRes">
    <xs:sequence>
      <xs:element name="Feedback" nillable="true" type="tns:ArrayOfProductFeedback" />
      <xs:element xmlns:q2="http://schemas.microsoft.com/2003/10/Serialization/Arrays" name="FeedbackBadges" nillable="true" type="q2:ArrayOfKeyValueOfguidProductFeedbackBadge_PjWDP_P4K" />
      <xs:element xmlns:q3="http://schemas.jtleigh.com/Commerce/Spencer/Core/1.0/" minOccurs="0" name="PaginationDetail" nillable="true" type="q3:PaginationDetail" />
      <xs:element xmlns:q4="http://schemas.microsoft.com/2003/10/Serialization/Arrays" name="RatingAttributes" nillable="true" type="q4:ArrayOfKeyValueOfguidProductRatingAttribute_PjWDP_P4K" />
      <xs:element xmlns:q5="http://schemas.microsoft.com/2003/10/Serialization/Arrays" name="RecommendationAttributes" nillable="true" type="q5:ArrayOfKeyValueOfguidProductRecommendationAttribute_PjWDP_P4K" />
      <xs:element xmlns:q6="http://schemas.microsoft.com/2003/10/Serialization/Arrays" name="ReviewAttributes" nillable="true" type="q6:ArrayOfKeyValueOfguidProductReviewAttribute_PjWDP_P4K" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="GetProductFeedbackRes" nillable="true" type="tns:GetProductFeedbackRes" />
  <xs:complexType name="ArrayOfProductFeedback">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ProductFeedback" nillable="true" type="tns:ProductFeedback" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfProductFeedback" nillable="true" type="tns:ArrayOfProductFeedback" />
  <xs:complexType name="ProductFeedback">
    <xs:sequence>
      <xs:element xmlns:q7="http://schemas.microsoft.com/2003/10/Serialization/Arrays" name="BadgeIds" nillable="true" type="q7:ArrayOfguid" />
      <xs:element name="CultureId" type="xs:int" />
      <xs:element minOccurs="0" name="CustomerId" nillable="true" type="ser:guid" />
      <xs:element minOccurs="0" name="CustomerLocation" nillable="true" type="xs:string" />
      <xs:element name="CustomerName" nillable="true" type="xs:string" />
      <xs:element name="DateAdded" type="xs:dateTime" />
      <xs:element minOccurs="0" name="EditorComments" nillable="true" type="xs:string" />
      <xs:element name="FeedbackId" type="ser:guid" />
      <xs:element minOccurs="0" name="Rating" nillable="true" type="tns:ProductRating" />
      <xs:element minOccurs="0" name="Recommendation" nillable="true" type="tns:ProductRecommendation" />
      <xs:element minOccurs="0" name="Review" nillable="true" type="tns:ProductReview" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ProductFeedback" nillable="true" type="tns:ProductFeedback" />
  <xs:complexType name="ProductRating">
    <xs:sequence>
      <xs:element minOccurs="0" name="AttributeValues" nillable="true" type="tns:ArrayOfProductRatingAttributeValue" />
      <xs:element name="Value" type="xs:unsignedByte" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ProductRating" nillable="true" type="tns:ProductRating" />
  <xs:complexType name="ArrayOfProductRatingAttributeValue">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ProductRatingAttributeValue" nillable="true" type="tns:ProductRatingAttributeValue" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfProductRatingAttributeValue" nillable="true" type="tns:ArrayOfProductRatingAttributeValue" />
  <xs:complexType name="ProductRatingAttributeValue">
    <xs:sequence>
      <xs:element name="AttributeId" type="ser:guid" />
      <xs:element name="Value" type="xs:unsignedByte" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ProductRatingAttributeValue" nillable="true" type="tns:ProductRatingAttributeValue" />
  <xs:complexType name="ProductRecommendation">
    <xs:sequence>
      <xs:element name="AttributeValues" nillable="true" type="tns:ArrayOfProductRecommendationAttributeValue" />
      <xs:element name="Value" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ProductRecommendation" nillable="true" type="tns:ProductRecommendation" />
  <xs:complexType name="ArrayOfProductRecommendationAttributeValue">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ProductRecommendationAttributeValue" nillable="true" type="tns:ProductRecommendationAttributeValue" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfProductRecommendationAttributeValue" nillable="true" type="tns:ArrayOfProductRecommendationAttributeValue" />
  <xs:complexType name="ProductRecommendationAttributeValue">
    <xs:sequence>
      <xs:element name="AttributeId" type="ser:guid" />
      <xs:element name="Value" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ProductRecommendationAttributeValue" nillable="true" type="tns:ProductRecommendationAttributeValue" />
  <xs:complexType name="ProductReview">
    <xs:sequence>
      <xs:element name="AttributeValues" nillable="true" type="tns:ArrayOfProductReviewAttributeValue" />
      <xs:element name="Body" nillable="true" type="xs:string" />
      <xs:element name="Images" nillable="true" type="tns:ArrayOfProductReviewImage" />
      <xs:element name="PositiveThirdPartyReviews" type="xs:int" />
      <xs:element minOccurs="0" name="Title" nillable="true" type="xs:string" />
      <xs:element name="TotalThirdPartyReviews" type="xs:int" />
      <xs:element xmlns:q8="http://schemas.datacontract.org/2004/07/JTLeigh.Commerce.Spencer.Features.ProductFeedback.Service.Contracts.Runtime.GetProductFeedback" name="Video" nillable="true" type="q8:ProductReviewVideo" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ProductReview" nillable="true" type="tns:ProductReview" />
  <xs:complexType name="ArrayOfProductReviewAttributeValue">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ProductReviewAttributeValue" nillable="true" type="tns:ProductReviewAttributeValue" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfProductReviewAttributeValue" nillable="true" type="tns:ArrayOfProductReviewAttributeValue" />
  <xs:complexType name="ProductReviewAttributeValue">
    <xs:sequence>
      <xs:element name="AttributeId" type="ser:guid" />
      <xs:element name="Value" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ProductReviewAttributeValue" nillable="true" type="tns:ProductReviewAttributeValue" />
  <xs:complexType name="ArrayOfProductReviewImage">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ProductReviewImage" nillable="true" type="tns:ProductReviewImage" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfProductReviewImage" nillable="true" type="tns:ArrayOfProductReviewImage" />
  <xs:complexType name="ProductReviewImage">
    <xs:sequence>
      <xs:element minOccurs="0" name="Caption" nillable="true" type="xs:string" />
      <xs:element name="ImageHeight" type="xs:short" />
      <xs:element name="ImageId" type="ser:guid" />
      <xs:element name="ImagePath" nillable="true" type="xs:string" />
      <xs:element name="ImageWidth" type="xs:short" />
      <xs:element name="ThumbnailHeight" type="xs:short" />
      <xs:element name="ThumbnailPath" nillable="true" type="xs:string" />
      <xs:element name="ThumbnailWidth" type="xs:short" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ProductReviewImage" nillable="true" type="tns:ProductReviewImage" />
  <xs:complexType name="ProductFeedbackBadge">
    <xs:sequence>
      <xs:element name="BadgeId" type="ser:guid" />
      <xs:element name="WellKnownBadgeCode" type="xs:unsignedByte" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ProductFeedbackBadge" nillable="true" type="tns:ProductFeedbackBadge" />
  <xs:complexType name="ProductRatingAttribute">
    <xs:sequence>
      <xs:element name="AttributeId" type="ser:guid" />
      <xs:element name="DisplayOrder" type="xs:int" />
      <xs:element name="Text" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ProductRatingAttribute" nillable="true" type="tns:ProductRatingAttribute" />
  <xs:complexType name="ProductRecommendationAttribute">
    <xs:sequence>
      <xs:element name="AttributeId" type="ser:guid" />
      <xs:element name="DisplayOrder" type="xs:int" />
      <xs:element name="Text" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ProductRecommendationAttribute" nillable="true" type="tns:ProductRecommendationAttribute" />
  <xs:complexType name="ProductReviewAttribute">
    <xs:sequence>
      <xs:element name="AttributeId" type="ser:guid" />
      <xs:element name="DisplayOrder" type="xs:int" />
      <xs:element name="Text" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ProductReviewAttribute" nillable="true" type="tns:ProductReviewAttribute" />
</xs:schema>